package test.base.arithmetic.innersort;

/**
 * 冒泡排序
 * @filename      : BubbleSort.java
 * @description   : TODO(一句话描述该类做什么)
 * @author        : wanghongkai
 * @create        : 2013-6-8 下午1:00:17
 * @copyright     : hileto Corporation 2013
 *
 * Modification History:
 * Date             Author       Version
 * --------------------------------------
 * 2013-6-8 下午1:00:17
 */
public class BubbleSort {
	/**
	 * 两边一起循环(中间不交为止)，小的就放前面
	 * @autor wanghongkai
	 * @param arr
	 */
	public static void bubbleSort(int[] arr){
		int middleNum;
		int pre,sufix;
		if(arr != null && arr.length > 0){
			Long begin=System.currentTimeMillis();
			for(int i=0;i+1<arr.length;i++){
				for(int j=arr.length-1;j>i;j--){
					pre=arr[i];
					sufix=arr[j];
					if(pre>sufix){
						middleNum=pre;
						arr[i]=sufix;
						arr[j]=middleNum;
					}
				}
			}
			Long end=System.currentTimeMillis();
			SortTools.println(arr,"冒泡算法", end-begin);
		}
	}
}
